// 定义一个二维数组 打印里面的内容
main() {
  List list = [
    {
      "cate": '国内',
      "news": [
        {"title": "国内新闻1"},
        {"title": "国内新闻2"},
        {"title": "国内新闻3"}
      ]
    },
    {
      "cate": '国际',
      "news": [
        {"title": "国际新闻1"},
        {"title": "国际新闻2"},
        {"title": "国际新闻3"}
      ]
    }
  ];

  for (var i = 0; i < list.length; i++) {
    print(list[i]["cate"]);
    print('-------------');
    for (var j = 0; j < list[i]["news"].length; j++) {
      print(list[i]["news"][j]["title"]);
    }
  }

  /* 
  break语句功能:
    1、在switch语句中使流程跳出switch结构。
    2、在循环语句中使流程跳出当前循环,遇到break 循环终止，后面代码也不会执行
    
    强调:
    1、如果在循环中已经执行了break语句,就不会执行循环体中位于break后的语句。
    2、在多层循环中,一个break语句只能向外跳出一层

  break可以用在switch case中 也可以用在 for 循环和 while循环中

  continue语句的功能:
  
  【注】只能在循环语句中使用,使本次循环结束，即跳过循环体重下面尚未执行的语句，接着进行下次的是否执行循环的判断。

  continue可以用在for循环以及 while循环中，但是不建议用在while循环中，不小心容易死循环
  */

  var i = 1;
  while (i <= 10) {
    if (i == 4) {
      break; /*跳出循环体 直接退出代码*/
    }
    print(i);
    i++;
  }

  for (var i = 1; i <= 10; i++) {
    if (i == 4) {
      continue; /*跳过当前循环体 然后循环还会继续执行*/
    }
    print(i);
  }
}
